summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFernando S <fsahmkow27@gmail.com>2023-12-19 16:15:40 +0100
committerGitHub <noreply@github.com>2023-12-19 16:15:40 +0100
commitefe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6 (patch)
tree92c1dec54debb493358a58e4e899a1a86ba7d183
parentMerge pull request #12387 from liamwhite/oboe (diff)
parentrenderer_vulkan: allow up to 7 swapchain images (diff)
downloadyuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar.gz
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar.bz2
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar.lz
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar.xz
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.tar.zst
yuzu-efe52db69021f94e3c23ee7bc7e4a6ca7e92ecc6.zip
-rw-r--r--src/video_core/fence_manager.h2
-rw-r--r--src/video_core/renderer_vulkan/vk_present_manager.cpp6
-rw-r--r--src/video_core/renderer_vulkan/vk_update_descriptor.h2
-rw-r--r--src/video_core/texture_cache/texture_cache_base.h2
4 files changed, 6 insertions, 6 deletions
diff --git a/src/video_core/fence_manager.h b/src/video_core/fence_manager.h
index 805a89900..c3eda6893 100644
--- a/src/video_core/fence_manager.h
+++ b/src/video_core/fence_manager.h
@@ -270,7 +270,7 @@ private:
std::jthread fence_thread;
- DelayedDestructionRing<TFence, 6> delayed_destruction_ring;
+ DelayedDestructionRing<TFence, 8> delayed_destruction_ring;
};
} // namespace VideoCommon
diff --git a/src/video_core/renderer_vulkan/vk_present_manager.cpp b/src/video_core/renderer_vulkan/vk_present_manager.cpp
index a59e2d2d1..5e7518d96 100644
--- a/src/video_core/renderer_vulkan/vk_present_manager.cpp
+++ b/src/video_core/renderer_vulkan/vk_present_manager.cpp
@@ -293,10 +293,10 @@ void PresentManager::RecreateSwapchain(Frame* frame) {
}
void PresentManager::SetImageCount() {
- // We cannot have more than 5 images in flight at any given time.
- // FRAMES_IN_FLIGHT is 7, and the cache TICKS_TO_DESTROY is 6.
+ // We cannot have more than 7 images in flight at any given time.
+ // FRAMES_IN_FLIGHT is 8, and the cache TICKS_TO_DESTROY is 8.
// Mali drivers will give us 6.
- image_count = std::min<size_t>(swapchain.GetImageCount(), 5);
+ image_count = std::min<size_t>(swapchain.GetImageCount(), 7);
}
void PresentManager::CopyToSwapchain(Frame* frame) {
diff --git a/src/video_core/renderer_vulkan/vk_update_descriptor.h b/src/video_core/renderer_vulkan/vk_update_descriptor.h
index e77b576ec..82fce298d 100644
--- a/src/video_core/renderer_vulkan/vk_update_descriptor.h
+++ b/src/video_core/renderer_vulkan/vk_update_descriptor.h
@@ -31,7 +31,7 @@ struct DescriptorUpdateEntry {
class UpdateDescriptorQueue final {
// This should be plenty for the vast majority of cases. Most desktop platforms only
// provide up to 3 swapchain images.
- static constexpr size_t FRAMES_IN_FLIGHT = 7;
+ static constexpr size_t FRAMES_IN_FLIGHT = 8;
static constexpr size_t FRAME_PAYLOAD_SIZE = 0x20000;
static constexpr size_t PAYLOAD_SIZE = FRAME_PAYLOAD_SIZE * FRAMES_IN_FLIGHT;
diff --git a/src/video_core/texture_cache/texture_cache_base.h b/src/video_core/texture_cache/texture_cache_base.h
index cbe56e166..6caf75b46 100644
--- a/src/video_core/texture_cache/texture_cache_base.h
+++ b/src/video_core/texture_cache/texture_cache_base.h
@@ -474,7 +474,7 @@ private:
};
Common::LeastRecentlyUsedCache<LRUItemParams> lru_cache;
- static constexpr size_t TICKS_TO_DESTROY = 6;
+ static constexpr size_t TICKS_TO_DESTROY = 8;
DelayedDestructionRing<Image, TICKS_TO_DESTROY> sentenced_images;
DelayedDestructionRing<ImageView, TICKS_TO_DESTROY> sentenced_image_view;
DelayedDestructionRing<Framebuffer, TICKS_TO_DESTROY> sentenced_framebuffers;